let layedit;
let index;
$(function () {

    layui.use(['form', 'layedit', 'upload', 'element', 'layer'], function () {
        var $ = layui.jquery
            , upload = layui.upload
            , element = layui.element
            , layer = layui.layer;
        let form = layui.form;
        const E = window.wangEditor;
        const editor = new E('#content');
        const editUrl = '/upload';//服务器访问地址
        editor.customConfig.uploadImgShowBase64 = true;  // 使用 base64 保存图片
        editor.customConfig.uploadImgServer = editUrl; // 上传图片到服务器
        editor.customConfig.showLinkImg = false;// 隐藏“网络图片”tab
//配置属性名称，绑定请求的图片数据
        editor.customConfig.uploadFileName = 'wangEditorUrl';
        editor.customConfig.withCredentials = true;
// 将图片大小限制为 5M
        editor.customConfig.uploadImgMaxSize = 5 * 1024 * 1024;
        editor.customConfig.uploadImgHooks = {

            success: function (xhr, editor, result) {
                // 图片上传并返回结果，图片插入成功之后触发
                // xhr 是 XMLHttpRequst 对象，editor 是编辑器对象，result 是服务器端返回的结果
                console.log(result);
            },
            // 如果服务器端返回的不是 {errno:0, data: [...]} 这种格式，可使用该配置
            // （但是，服务器端返回的必须是一个 JSON 格式字符串！！！否则会报错）
            customInsert: function (insertImg, result, editor) {
                // 图片上传并返回结果，自定义插入图片的事件（而不是编辑器自动插入图片！！！）
                // insertImg 是插入图片的函数，editor 是编辑器对象，result 是服务器端返回的结果

                // 举例：假如上传图片成功后，服务器端返回的是 {url:'....'} 这种格式，即可这样插入图片：
                let url = result.data.src;
                console.log(url);
                insertImg(url)//回显到富文本里面
                // result 必须是一个 JSON 格式字符串！！！否则报错
            }
        };

//富文本创建
        editor.create();
        // layedit = layui.layedit;
        // layedit.set({
        //     uploadImage: {
        //         url: '/upload' //接口url
        //         , type: '' //默认post
        //     }
        // });
        //
        // index = layedit.build('content'); //建立编辑器
        // layedit.sync(index)
        // setTimeout(function () {
        getCuisineName();

        // }, 2000)

        function getCuisineName() {
            $.ajax({
                url: '/back/cuisine/findAll',
                data: {enable: 1},
                type: 'get',
                // async: false,
                dataType: 'json',
                success: function (res) {
                    // console.log(res);
                    // $("#id").html('aaa');
                    let html = '<option value="-1" selected>请选择菜系</option>';
                    for (let i = 0; i < res.data.length; i++) {
                        html += '<option value="' + res.data[i].id + '">' + res.data[i].name + '</option>';
                    }
                    $("#cuisineId").html(html);
                    form.render();//重新渲染表单

                    let productId = sessionStorage.getItem("productId");
                    findById(productId);
                }
            })
        }


        function findById(productId) {
            $.ajax({
                url: '/back/product/findById',
                data: {id: productId},
                type: 'get',
                dataType: 'json',
                success: function (res) {
                    console.log(res);
                    setData(res.data);
                }
            })
        }

        function setData(data) {
            form.val('form', {
                "cuisineId": data.cuisineId // "name": "value"
                , "name": data.name
                , "marketPrice": data.marketPrice //复选框选中状态
                , "normalPrice": data.normalPrice //开关状态
                , "birthday": data.birthday
                , 'remark': data.remark
            });
            $("#demo1").attr("src", data.imgHref);
            $("input[type=radio][name=isRecommend][value=" + data.isRecommend + "]").attr("checked", "checked");
            $("input[type=radio][name=enable][value=" + data.enable + "]").attr("checked", "checked");
            // layedit.setContent(index, data.content);
            editor.txt.html(data.content);
            form.render();
        }

        let imgHref = '';
        //常规使用 - 普通图片上传
        var uploadInst = upload.render({
            elem: '#test1'
            , url: '/upload' //此处用的是第三方的 http 请求演示，实际使用时改成您自己的上传接口即可。
            , before: function (obj) {
                //预读本地文件示例，不支持ie8
                obj.preview(function (index, file, result) {
                    $('#demo1').attr('src', result); //图片链接（base64）
                });
            }
            , done: function (res) {
                console.log(res);
                imgHref = res.data.src;
                //如果上传失败
                if (res.code > 0) {
                    return layer.msg('上传失败');
                }
                //上传成功的一些操作
                //……
                $('#demoText').html(''); //置空上传失败的状态
            }
        });
        form.on('submit(update)', function (data) {
            data = data.field;
            data.imgHref = imgHref;
            // data.content = layedit.getContent(index);
            data.content = editor.txt.html();;
            data.id = sessionStorage.getItem("productId");
            console.log(data);
            $.ajax({
                url: '/back/product/update',
                data: data,
                type: 'post',
                dataType: 'json',
                success: function (res) {
                    if (res.count > 0) {
                        layer.alert("修改成功", {
                                icon: 6
                            },
                            function () {
                                //关闭当前frame
                                xadmin.close();

                                // 可以对父窗口进行刷新
                                xadmin.father_reload();
                            });
                    } else {
                        layer.alert("修改失败");
                    }
                }
            })
            return false;
        })
    })
})